package com.mc.gpm.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.mc.common.annotation.Excel;
import com.mc.common.core.domain.BaseEntity;

/**
 * 种质资源出库对象 gpm_out_storage
 *
 * @author mc
 * @date 2021-03-19
 */
public class GpmOutStorage extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 出库编号 */
    private String id;

    /** 库编号 */
    @Excel(name = "库编号")
    private String storageId;

    /** 出库时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "出库时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date outTime;

    /** 货架编号 */
    @Excel(name = "货架编号")
    private int shelveId;

    /** 出库时活性 */
    @Excel(name = "出库时活性")
    private String outActive;

    /** 出库量 */
    @Excel(name = "出库量")
    private BigDecimal outAmount;

    /** 出库登记人 */
    @Excel(name = "出库登记人")
    private String outUserId;

    /** 出库原因 */
    @Excel(name = "出库原因")
    private String outReason;

    /** 出库类型 */
    @Excel(name = "出库类型")
    private String outType;

    /** 出库千粒重 */
    @Excel(name = "出库千粒重")
    private String outGrain;

    /** 出库纯净度 */
    @Excel(name = "出库纯净度")
    private String outPurity;

    public void setId(String id)
    {
        this.id = id;
    }

    public String getId()
    {
        return id;
    }
    public void setStorageId(String storageId)
    {
        this.storageId = storageId;
    }

    public String getStorageId()
    {
        return storageId;
    }
    public void setOutTime(Date outTime)
    {
        this.outTime = outTime;
    }

    public Date getOutTime()
    {
        return outTime;
    }
    public void setShelveId(int shelveId)
    {
        this.shelveId = shelveId;
    }

    public int getShelveId()
    {
        return shelveId;
    }
    public void setOutActive(String outActive)
    {
        this.outActive = outActive;
    }

    public String getOutActive()
    {
        return outActive;
    }
    public void setOutAmount(BigDecimal outAmount)
    {
        this.outAmount = outAmount;
    }

    public BigDecimal getOutAmount()
    {
        return outAmount;
    }
    public void setOutUserId(String outUserId)
    {
        this.outUserId = outUserId;
    }

    public String getOutUserId()
    {
        return outUserId;
    }
    public void setOutReason(String outReason)
    {
        this.outReason = outReason;
    }

    public String getOutReason()
    {
        return outReason;
    }
    public void setOutType(String outType)
    {
        this.outType = outType;
    }

    public String getOutType()
    {
        return outType;
    }
    public void setOutGrain(String outGrain)
    {
        this.outGrain = outGrain;
    }

    public String getOutGrain()
    {
        return outGrain;
    }
    public void setOutPurity(String outPurity)
    {
        this.outPurity = outPurity;
    }

    public String getOutPurity()
    {
        return outPurity;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("storageId", getStorageId())
                .append("outTime", getOutTime())
                .append("shelveId", getShelveId())
                .append("outActive", getOutActive())
                .append("outAmount", getOutAmount())
                .append("outUserId", getOutUserId())
                .append("outReason", getOutReason())
                .append("outType", getOutType())
                .append("outGrain", getOutGrain())
                .append("outPurity", getOutPurity())
                .append("createTime", getCreateTime())
                .toString();
    }
}